const express = require('express');

//？ 干嘛的
const noteModel = require('../db/models/noteModel');

// ？干嘛的
const loginVerify = require('../middleware/loginVerify');

// 创建路由器
const a = express.Router();

// pageRouter 页面
// 先配置路由
/**
 * 1. 首页 - 重定向到列表页
 * 2. 新增笔记页  add
 * 3. 编辑笔记页  list
 * 4. 笔记列表页  edit
 */

// 首页
a.get('/',(req,res)=>{
    // 重定向
    res.redirect('/list');
})

// 展示新增笔记页面 - 路由
a.get('/add',loginVerify,(req,res)=>{
    res.render('add.html');
})

//笔记列表页
a.get('/list',(req,res)=>{
   
    // 用户名 从session中获取 username  - 登录之后才会有
    let username = req.session.username || null;

    // 数据库查找数据
    // noteModel 对象模型 - 类似于数组的存在
    // find(参数1)  ：查找条件 
    // find（参数2）：回调->参数1：错误信息；参数2：获取的数据

    // create({data},fn(err,data)) - 插入一条数据
    // insertMany 批量插入
    
    noteModel.find({user:username},(err,data)=>{
        if(err) throw err;
        // data 数组
        // username = 'ggg'
        // 
        // let data = [
        //     {
        //         _id:'637cbae493e8613d489c6149',
        //         title:"123123123",
        //         content:"123131231231",
        //         user:"ggg"
        //     },
        //     {
        //         _id:"637cbad793e8613d489c6140",
        //         title:"aaa",
        //         content:"12312",
        //         user:"ggg"
        //     },
        // ];

        res.render('list.html',{data,username});
    })

})

//笔记编辑页面
a.get('/edit/:id',loginVerify,(req,res)=>{

    // req.params.id - > 路径参数
    // console.log(req.params.id);
    // 从数据库中查找数据 - 通过id查找数据
    noteModel.findById(req.params.id,(err,data)=>{
        if(err) throw err;
        // ejs
        res.render('update.html',{data});
    })
})


module.exports = a;